/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package Current.Units;

import java.io.Serializable;

/**
 * @author Fork
 */
public abstract class Unit implements Serializable, Cloneable {

    private int costToTrain;
    int haveTrained;
    private boolean untrainable;

    Unit(int costToTrain, int haveTrained, boolean untrainable) {
        this.costToTrain = costToTrain;
        this.haveTrained = haveTrained;
        this.untrainable = untrainable;
    }

    //Training Costs Info Handling
    public int getCostToTrain() {
        return costToTrain;
    }

    public void setCostToTrain(int costToTrain) {
        this.costToTrain = costToTrain;
    }

    public int calcTotalTrainCost() {
        return costToTrain * haveTrained;
    }

    //Units Trained Info Handling
    public int getHaveTrained() {
        return haveTrained;
    }

    public void setHaveTrained(int haveTrained) {
        this.haveTrained = haveTrained;
    }

    //Untrainable Status Info Handling
    public boolean isUntrainable() {
        return untrainable;
    }
}
